<html>
<head>
  <meta http-equiv="content-type" content="text/html; charset=utf-8">
  <title></title>
</head>

<body>
<h1><a name="Introduction"></a>Introduction<a href="#Introduction"
class="section_anchor"></a></h1>

<p>This document contains information needed to run the command line user
interface contained in the package. Note that this software doesn't target end
users directly, but rather developers of user interfaces or braille systems.
The functionality in the user interface does not demonstrate the full
capability of the package. </p>

<h1><a name="First_Run"></a>First Run<a href="#First_Run"
class="section_anchor"></a></h1>

<p>To run the user interface, download and extract the latest release. If you
do not have Java installed on your machine, you have to download and install
that as well. </p>

<p>On the command line, navigate to the extracted folder and type: <tt>java
-jar brailleUtils-ui-1.1.0.jar</tt>. Press enter. </p>

<p>This will bring up a list of applications (or features): </p>
<ul>
  <li>emboss</li>
  <li>text2pef </li>
  <li>pef2text </li>
  <li>validate </li>
  <li>split </li>
  <li>merge </li>
  <li>generate </li>
</ul>

<p>These are explained in detail below. To start one of them, append their name
as the first argument, for example: <tt>java -jar brailleUtils-ui-1.1.0.jar
emboss</tt> </p>

<h1><a name="Emboss"></a>Emboss<a href="#Emboss"
class="section_anchor"></a></h1>

<p>Send a PEF-file to an embosser for embossing. </p>

<p>One argument is required, and can be one of the following: </p>
<ul>
  <li>path to a file </li>
  <li><tt>-clear</tt> </li>
  <li><tt>-setup</tt> </li>
</ul>

<p>Upon the first run, the application will ask the user for the required
setup: </p>
<ul>
  <li>device </li>
  <li>embosser model </li>
  <li>embosser table (if applicable) </li>
  <li>paper size </li>
</ul>

<p>The file will be sent directly to the embosser on subsequent runs. To change
settings, use either <tt>-setup</tt> or <tt>-clear</tt>. </p>

<h2><a name="Setup"></a>Setup<a href="#Setup" class="section_anchor"></a></h2>

<p>Setup will ask all the user to verify all settings. </p>

<h2><a name="Clear"></a>Clear<a href="#Clear" class="section_anchor"></a></h2>

<p>Clear will delete the current settings. The next time the application is
started, it runs as on the first run. </p>

<h2><a name="Device"></a>Device<a href="#Device"
class="section_anchor"></a></h2>

<p>The device is the address where the embosser can be contacted. In most cases
this should be intuitive. If your device does not show up, make sure that the
embosser is turned on. </p>

<h2><a name="Embosser_Model"></a>Embosser Model<a href="#Embosser_Model"
class="section_anchor"></a></h2>

<p>Note that the same embosser model may communicate differently depending on
firmware or hardware version. Make sure that the embosser version is correct.
</p>

<h2><a name="Embosser_Table"></a>Embosser Table<a href="#Embosser_Table"
class="section_anchor"></a></h2>

<p>Some embossers require that a table is chosen by the user for the purpose of
communication. Make sure that the table chosen in the user interface matches
the value expected by the embosser. </p>

<h2><a name="Paper_Size"></a>Paper Size<a href="#Paper_Size"
class="section_anchor"></a></h2>

<p>Verify that the paper in the embosser matches the value in the user
interface. Some embossers uses rolls of paper. In this case, select a paper
size that matches the intended paper size once cut. </p>

<h1><a name="Text_to_PEF"></a>Text to PEF<a href="#Text_to_PEF"
class="section_anchor"></a></h1>

<p>Convert a text braille file into a PEF-file. </p>

<p>Two arguments are required <i>path to input file</i> and <i>path to output
file</i>. </p>

<p>The input file should be a "braille ready" text file, i.e. broken in rows an
pages (using the form feed character), and using one unique character to
represent each braille pattern. </p>

<p>Optional arguments include: </p>
<ul>
  <li>mode </li>
  <li>identifier </li>
  <li>date </li>
  <li>author </li>
  <li>title </li>
  <li>language </li>
  <li>duplex </li>
</ul>

<p>The options <tt>identifier</tt>, <tt>date</tt>, <tt>author</tt>,
<tt>title</tt> and <tt>language</tt> all involve setting the meta data of the
resulting file. It will not affect the contents of the file in any way. </p>

<h2><a name="Mode"></a>Mode<a href="#Mode" class="section_anchor"></a></h2>

<p>Choose a table to use when converting. Note that, if a character is
encountered in the file that isn't in the selected table, an error will occur.
The default mode is to attempt to detect. If this fail, choose between the
tables suggested in the detector failure message. </p>

<h2><a name="Duplex"></a>Duplex<a href="#Duplex"
class="section_anchor"></a></h2>

<p>Set the duplex property of the resulting file. </p>

<h1><a name="PEF_to_Text"></a>PEF to Text<a href="#PEF_to_Text"
class="section_anchor"></a></h1>

<p>Convert a PEF-file document into a text braille file. </p>

<p>Two arguments are required <i>path to input file</i> and <i>path to output
file</i>. </p>

<p>Optional arguments include: </p>
<ul>
  <li>range </li>
  <li>table </li>
  <li>breaks </li>
  <li>fallback </li>
  <li>replacement </li>
</ul>

<h2><a name="Range"></a>Range<a href="#Range" class="section_anchor"></a></h2>

<p>Output a range of pages. </p>

<h2><a name="Table"></a>Table<a href="#Table" class="section_anchor"></a></h2>

<p>Set the table (character mapping) to use. </p>

<h2><a name="Breaks"></a>Breaks<a href="#Breaks"
class="section_anchor"></a></h2>

<p>Set the line break style. Most braille applications use DOS line breaks. </p>

<h2><a name="Fallback"></a>Fallback<a href="#Fallback"
class="section_anchor"></a></h2>

<p>Set the action to use if an eight dot pattern is encountered and the current
table does not support eight dot: </p>
<ul>
  <li>mask </li>
  <li>replace </li>
  <li>remove </li>
</ul>

<h2><a name="Replacement"></a>Replacement<a href="#Replacement"
class="section_anchor"></a></h2>

<p>Set the replacement character to use if an eight dot pattern is encountered
and fallback is set to "replace". </p>

<h1><a name="Validate_a_PEF-file"></a>Validate a PEF-file<a
href="#Validate_a_PEF-file" class="section_anchor"></a></h1>

<p>Validate a PEF-file. </p>

<p>One argument is required: <i>path to input file</i> </p>

<p>Optional arguments include: </p>
<ul>
  <li>mode </li>
</ul>

<h2><a name="Mode"></a>Mode<a href="#Mode" class="section_anchor"></a></h2>

<p>Set the validation mode: </p>
<ul>
  <li>full </li>
  <li>light </li>
</ul>

<h1><a name="Split_a_PEF-file"></a>Split a PEF-file<a href="#Split_a_PEF-file"
class="section_anchor"></a></h1>

<p>Split a PEF file into several files, one file per volume. </p>

<p>The purpose is to facilitating the use of PEF files with braille editors
that do not support multi volume files. </p>

<p>Two arguments are required: <i>path to input file</i> and <i>path to output
folder</i>. </p>

<h1><a name="Merge_several_PEF-files"></a>Merge several PEF-files<a
href="#Merge_several_PEF-files" class="section_anchor"></a></h1>

<p>Merge several PEF files into one. </p>

<p>The purpose is to facilitating the use of PEF-files with braille editors
that do not support multi volume files. </p>

<p>Three arguments are required: <i>path to input folder</i>, <i>path to output
file</i> and identifier. </p>

<p>Optional arguments include: </p>
<ul>
  <li>sort </li>
</ul>

<h2><a name="Sort"></a>Sort<a href="#Sort" class="section_anchor"></a></h2>

<p>Set the sorting method to use when ordering files in the input folder. </p>

<h1><a name="Generate_a_PEF-file"></a>Generate a PEF-file<a
href="#Generate_a_PEF-file" class="section_anchor"></a></h1>

<p>Generate a random PEF-file for testing purposes. </p>

<p>One argument is required: <i>path to output file</i> </p>

<p>Optional arguments include: </p>
<ul>
  <li>volumes </li>
  <li>pages </li>
  <li>eightdot </li>
  <li>rows </li>
  <li>cols </li>
  <li>duplex </li>
</ul>

<h2><a name="Volumes"></a>Volumes<a href="#Volumes"
class="section_anchor"></a></h2>

<p>Set the number of volumes to generate. </p>

<h2><a name="Pages"></a>Pages<a href="#Pages" class="section_anchor"></a></h2>

<p>Set the number of pages in each volume. </p>

<h2><a name="Eight_dot"></a>Eight dot<a href="#Eight_dot"
class="section_anchor"></a></h2>

<p>Set to true to include 8-dot patterns. </p>

<h2><a name="Rows"></a>Rows<a href="#Rows" class="section_anchor"></a></h2>

<p>Set the maximum numbers of rows on a page. </p>

<h2><a name="Cols"></a>Cols<a href="#Cols" class="section_anchor"></a></h2>

<p>Set the maximum number of characters on a row. </p>

<h2><a name="Duplex"></a>Duplex<a href="#Duplex"
class="section_anchor"></a></h2>

<p>Set the duplex property. </p>

<h1><a name="Plugins"></a>Plugins<a href="#Plugins"
class="section_anchor"></a></h1>

<p>Plugins can be added by creating a directory called <i>plugins</i> in the
software folder and placing the plugin (.jar) in that folder. </p>
</body>
</html>
